$(document).ready(inicio);

var app_path="../../../";

function inicio(){
	var data = {
		"EventoNombreBarrio":"seleccione departamento, municipio y tipo de intermunicipal y luego escriba el nombre del sitio y espere a que aparezca el lugar indicado"
	}
	$.each(data, function(key, value) {
        $("#" + key).focus(function() {
            $('#tooltip').html(value);
        });;
	});
	$('input').blur(function() {
	    $('#tooltip').html("Haga Click en el campo que desea ingresar para obtener mas ayuda");
	});
	//Autocompletado para el nombre del paìs de residencia.
	$('#EventoNombrePais').autocomplete({
		source: function(request, response) {
		$.ajax({
			url: app_path+"Lugars/autoCompletar",
			type: "POST",
			dataType: "json",
			data: "data[nombre_del_lugar]="+request.term+"&data[tipo_de_lugar]=1",
			success: function(data) {
			
				response($.map(data, function(item) {
					
					return {
						label: item.Lugar.nombre_del_lugar,
						value: item.Lugar.nombre_del_lugar,
						codigo : item.Lugar.lugar_id 
						}
					}));
				}
			});
		},
		change: function(event, ui) {
			if(ui.item!=null)
				{ //Si se selecciono un paìs de la lista
				var id=ui.item.codigo;
				$.ajax({
					url: app_path+"Lugars/buscarLista",
					type: "POST",
					dataType: "html",
					data: "data[parent_id]="+id+"&data[tipo_de_lugar]=2", //Haga una lista de los lugares cuyo parent_id es el valor de la opciòn seleccionada actualmente en país y cuyo tipo de lugar sea 2 , es decir que sean departamentos.
					success: function(data) {
						if(data=='<option value="0">Elija una opcion</option>'){//Si el paìs seleccionado no tiene departamentos asociados en la base de datos
							$('.datos_lugar_especifico').hide();
							//Dado que no tenemos datos de los departamentos del paìs, sólo nos interesa el paìs por lo tanto dejamos todo lo demás en ceros para indicar que no hay màs informaciòn aparte del paìs 
							$('#EventoNombreDireccion').val("");
							$('#EventoAreaDeOcurrenciaDelCaso').val("");
						}
						else{ // Si el paìs si tiene departamentos en la BD.
						$('.datos_lugar_especifico').show();	
						$('#EventoCodigoDepartamento').html(data);
						$('#EventoCodigoMunicipio').html("<option value='0'>Seleccione un departamento</option>");
						}
						}
					});
				$('#EventoCodigoDepartamento').val(0);
				$('#EventoCodigoMunicipio').val(0);
				$('#EventoNombreTipoIntermun').val(0);
				$('#EventoNombreBarrio').val("");
				$('#EventoCodigoPais').val(id);
				$('#EventoLugarId').val(id); //Dado que se selecciono un paìs vàlido, la informaciòn puede quedar hasta aquì
			}
			
		}
		});
	$('#EventoNombrePais').blur(function(){
		if($(this).val()==0){
			alert('Por favor elija un país de la lista');
			$(this).focus(); //Enfoque de nuevo el cuadro del nombre de paìs hasta que seleccione un paìs vàlido de la lista
			$(this).autocomplete( "search" ,$(this).val()); //Mustre la lista de paìses parecidos a lo que esta escrito en el campo de nombre de paìs
			$('#EventoNombrePais').val(0);
		}
	});
	//Cambio de la lista de municipios dependiendo de la selecciòn de departamento.
	$('#EventoCodigoDepartamento').change(function(){
		var id=$(this).val();
		$.ajax({
			url: app_path+"Lugars/buscarLista",
			type: "POST",
			dataType: "html",
			data: "data[parent_id]="+id+"&data[tipo_de_lugar]=3", //Haga una lista de los lugares cuyo parent_id es el valor de la opciòn seleccionada actualmente y cuyo tipo de lugar sea 3 , es decir que sean municipios.
			success: function(data) {
				$('#EventoCodigoMunicipio').html(data);
				$('#EventoLugarId').val(id);
				}
			});
		$('#EventoCodigoMunicipio').val(0);
		$('#EventoNombreTipoIntermun').val(0);
		$('#EventoNombreBarrio').val("");
	});
	//Si selecciona un municipio, cambie el lugar_id al del municipio seleccionado
	$('#EventoCodigoMunicipio').change(function(){
		$('#EventoLugarId').val($(this).val());
		$('#EventoNombreTipoIntermun').val(0);
		$('#EventoNombreBarrio').val("");
	});
	//Autocompletado Barrio
	$('#EventoNombreBarrio').autocomplete({
		source: function(request, response) {
		$.ajax({
			url: app_path+"Lugars/autoCompletar",
			type: "POST",
			dataType: "json",
			data: "data[nombre_del_lugar]="+request.term+"&data[tipo_de_lugar]="+$('#EventoNombreTipoIntermun').val()+"&data[parent_id]="+$('#EventoCodigoMunicipio').val(),
			success: function(data) {
			
				response($.map(data, function(item) {
					
					return {
						label: item.Lugar.nombre_del_lugar,
						value: item.Lugar.nombre_del_lugar,
						codigo : item.Lugar.lugar_id 
						}
				}));
			}
		});
		},
		change: function(event, ui) {
			if(ui.item==null){ //Si el barrio/localidad/vereda que se esta escribiendo no existe en la base de datos
				$('#EventoCodigoBarrio').val(0); //Ponga en 0 el còdigo para indicar que no existe el registro en la BD.
				$('#EventoLugarId').val(0); // Ponga en 0 el lugar_id para indicar que no existe un lugar en la base de datos y debe crearse uno para este caso. 	
			}
			else{
				$('#EventoCodigoBarrio').val(ui.item.codigo);
				$('#EventoLugarId').val(ui.item.codigo);
			}	
		}
	});
	$('#EventoNombreBarrio').blur(function(){
		if($('#EventoNombreBarrio').val()!="" && $('#EventoNombreTipoIntermun').val()==0){ //Si se ingreso algo en el nombre del barrio y no se ha seleccionado el tipo de intermun
			alert('Por favor seleccione un tipo');
			//TODO No pude encontrar una forma de mostrarle al usuario las opciones del select automàticamente 
			$('#EventoNombreTipoIntermun').focus();
		}
	});
	$('#EventoNombreTipoIntermun').change(function(){
		$('#EventoNombreBarrio').val("");
		$('#EventoNombreBarrio').focus();
	});
	$('#Siguiente').button({ icons: {primary:'ui-icon-circle-arrow-e'} });
	$('#Siguiente').click(function(){$("#EventoAddForm").submit();});

	$('#Cancelar').button({ icons: {primary:'ui-icon-circle-close'} });
	$('#Cancelar').click(function(){
		//TODO: Definir que hace el botón cancelar.
		});
	
	$('.datepick').datepicker({ dateFormat: 'yy-mm-dd' });
	$('.datepick2').datepicker({ dateFormat: 'yy-mm-dd' });
	
		
}
